One or more aspects relate, in general, to processing within a computing environment, and in particular, to processing associated with ciphering and authentication of data.
Secure message transmission in an electronic information processing context involves encryption and decryption of messages, as well as authentication. A message is encrypted by the sender prior to transmission to ensure that inspection of the encrypted message does not reveal its true content to a third party. On the other hand, a message is decrypted by a recipient to reveal the original content. Additionally, message authentication ensures that the content of the message provided by the sender has not been accidentally or maliciously altered during transmission. Thus, the message received is, in fact, the same as that which was sent.
The U.S. National Institute of Science and Technology (NIST) Special Publication 800-38D, Recommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) and GMAC, (GMAC: Galois Message Authentication Code), describes the following operations:                Authentication of additional authenticated data using a Galois Hashing (GHASH) algorithm described in NIST SP 800-38D. An example of additional authenticated data is the network routing information for a message. This data is not encrypted so that a network router may properly dispatch the message; however, the routing information may need to be authenticated, for example, to ensure that the data came from the expected source.        Ciphering of the message using an approved symmetric key-block cipher with a block size of 128 bits, such as the advanced encryption standard (AES). To minimize potential repeatability of ciphered blocks, the ciphering technique uses an incrementing counter from one block to the next that is included in the ciphering process.        Authentication of the encrypted message data using GHASH.        
Separate individual instructions are available to perform ciphering of a message using a variety of ciphering algorithms, and for producing a message digit for the message.